#include"图书信息管理系统.h"

extern FILE* stdin;
extern FILE* stdout;

void Menu()
{
	printf("\n\n");
	printf("*********************************\n");
	printf("*       图书信息管理系统        *\n");
	printf("*********************************\n");
	printf("*1.添加图书    ***    2.删除图书*\n");
	printf("*3.查找图书    ***    4.修改图书*\n");
	printf("*5.图书排序    ***    0.退出系统*\n");
	printf("*********************************\n");
}

void Clear()
{
	pid_t id = fork();
	if(id == 0)
	{
		execlp("clear",NULL);
		exit(1);
	}
	wait(NULL);
}

int main()
{
	ListNode* book = ListCreate();//获取头节点
	ReadFiles(book);//读取文件
	int order = -1;
	do 
	{
        Clear();
		ListPrint(book);//打印信息
		Menu();
		printf("请选择->");
		scanf("%d", &order);
		switch (order)
		{
			case 1: 
			{
				Clear();
				InsertBook(book);//插入书籍
				break;
			}
			case 2:
			{
				EraseBook(book);
				break;
			}
			case 3:
			{
				char value[50];
				printf("请输入查找书籍的书名/分类/作者/出版社> ");
				scanf("%s", value);
                Clear();
				FindOutPut(book, value);
				getchar();getchar(); //用作停顿
				break;
			}
			case 4:
			{
				Clear();
				ListPrint(book);//打印信息
				ChangeInf(book);
				break;
			}
			case 5:
			{
				Clear();
				BookSort(book);
				break;
			}
			default:
			{
				Clear();
				printf("欢迎下次使用!\n");
				break;
			}
		}
		WriteFail(book);//每次操作完都更新写入文件
	} while (order);
	ListDestory(book);//销毁链表
	return 0;
}
